package org.aerie.forest.core.brick.test;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @description forest测试序号注解
 *
 * @author quark
 * @organization aerie
 * @date 2020年5月19日 下午11:26:18
 * @version 1.2.0
 */
@Target({ ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface ForestTestSign {

	/**
	 * @description 序号
	 *
	 * @author quark
	 * @organization aerie
	 * @date 2020年5月21日 下午1:15:50
	 * @version 1.2.0
	 */
	enum Serial {
		/**
		 * @description 第一
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:16:00
		 * @version 1.2.0
		 */
		FIREST(0),
		/**
		 * @description 第二
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:16:06
		 * @version 1.2.0
		 */
		SECOND(1),
		/**
		 * @description 第三
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:16:43
		 * @version 1.2.0
		 */
		THIRDLY(2),
		/**
		 * @description 第四
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:16:48
		 * @version 1.2.0
		 */
		FOURTH(3),
		/**
		 * @description 第五
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:16:54
		 * @version 1.2.0
		 */
		FIFTH(4),
		/**
		 * @description 第六
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:17:02
		 * @version 1.2.0
		 */
		SIXTH(5),
		/**
		 * @description 第七
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:17:08
		 * @version 1.2.0
		 */
		SEVENTH(6);

		/**
		 * @description 序号
		 * 
		 * @author quark
		 * @date 2020年5月21日 下午1:15:37
		 * @version 1.2.0
		 */
		private final int serialNum;

		/**
		 * Construction
		 * 
		 * @param serialNum 序号
		 *
		 * @author quark
		 * @date 2020年5月21日 下午1:17:16
		 * @version 1.2.0
		 */
		private Serial(int serialNum) {
			this.serialNum = serialNum;
		}

		/**
		 * @description 获得序号
		 * @return 序号
		 *
		 * @author quark
		 * @date 2020年5月21日 下午1:17:25
		 * @version 1.2.0
		 */
		public int getSerialNum() {
			return serialNum;
		}

	}

	/**
	 * @description 测试序号
	 * @return 序号
	 *
	 * @author quark
	 * @date 2020年5月21日 下午1:40:38
	 * @version 1.2.0
	 */
	public Serial serial() default Serial.FIREST;
}
